La Calculadora de Windows es un software interesante y no tan simple. La interfaz de usuario inicial simple que ves en el lanzamiento puede ser engañosa. Por supuesto, esa es una buena elección de experiencia de usuario que Microsoft hizo, ya que la mayoría de los usos de la calculadora son bastante simples. Sin embargo, la calculadora es compleja en la forma en que se codificó sobre el paso de los años, así como las funciones avanzadas que tiene.
¿Qué dificultades se afrontaron al tratar de convertirla de plataforma? Además de todo ese código C++ y sus orígenes antiguos, la calculadora también presenta funcionalidades avanzadas como soporte para modos científicos y programadores y capacidades mucho más complicadas.
Para que la Plataforma Uno, desarrollada en C#, pueda soportar la Calculadora en iOS, Android y WebAssembly, algunas partes del código debían traducirse a C#. Otras partes necesitaban ser ajustadas para cumplir con el soporte de C++ 11 de clang.
Eso dio lugar a numerosos desafíos complicados que debían superarse, como los siguientes:
Portar el motor a la plataforma Uno:
Ajuste de C++ del motor de cálculo
Detalles de interoperabilidad de código nativo
Convertir el código C++ / CX a C#
Convertir el XAML
Recursos de localización
Conexión de C++ y C# juntos:
Mono para WebAssembly Soporte de enlace dinámico y estático
La capa de adaptación C
Devoluciones de llamada de C++ a C#
Agregar funciones a la plataforma Uno
La transferencia de la Calculadora es un proyecto muy interesante para trabajar, y también es una muy buena calculadora para usar en todas las plataformas. Puedes intentar construirlo tú mismo dirigiéndote al repositorio de GitHub.
Todo esto te da una idea de la importancia de tomar un curso de C#, otro curso de Python y otro curso de JavaScript. Así podrás desarrollar y portar aplicaciones a cualquier plataforma.